package com.starry.module.system.api.menu.domain.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 当前登陆用户的菜单元信息
 *
 * @Author xiaoke
 */
@Data
@Schema(description = "LoginRouterVo，当前登陆用户的菜单元信息")
public class LoginRouterMetaVo {
    /**
     * 是否显示菜单
     */
    @Schema(description = "是否显示菜单")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Boolean showLink;
    /**
     * 图标
     */
    @Schema(description = "图标")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String icon;
    /**
     * 激活菜单的path
     */
    @Schema(description = "激活菜单的path")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String activePath;
    /**
     * 是否添加到tag
     */
    @Schema(description = "是否添加到tag")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Boolean showTag;
    /**
     * 是否缓存该页面
     */
    @Schema(description = "是否缓存该页面")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Boolean keepAlive;
    /**
     * 外部跳转链接
     */
    @Schema(description = "外部跳转链接")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String frameSrc;
    /**
     * 菜单标题
     */
    @Schema(description = "菜单标题")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private String title;
    /**
     * 显示顺序
     */
    @Schema(description = "显示顺序")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    private Integer menuRank;
}
